package com.yugong.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.yugong.entity.dto.CourseArrange;
import com.yugong.entity.vo.request.CourseArrangeRequestVO;
import com.yugong.entity.vo.response.CourseArrangeListResponseVO;

/**
 * 课程安排业务逻辑接口
 *
 * @author yugong
 * @date 2024/2/18
 */
public interface CourseArrangeService extends IService<CourseArrange> {
    /**
     * 新增课程安排
     *
     * @param courseArrangeRequestVO 课程安排请求实体类
     * @return 响应码
     */
    int addCourseArrange(CourseArrangeRequestVO courseArrangeRequestVO);

    /**
     * 查询课程安排
     *
     * @param pageNum           当前页
     * @param pageSize          当前页数据个数
     * @param orderClassAdminNo 订单班管理员工号
     * @param orderClassName    班名
     * @return 课程安排
     */
    PageInfo<CourseArrangeListResponseVO> findCourseArrangePage(Integer pageNum, Integer pageSize, String orderClassAdminNo, String orderClassName);

    /**
     * 更新课程安排
     *
     * @param courseArrangeRequestVO 课程安排请求实体类
     * @return 数据库影响行数
     */
    int updateCourseArrange(CourseArrangeRequestVO courseArrangeRequestVO);

    /**
     * 删除课程安排
     *
     * @param courseArrangeNo 主键
     * @return 数据库影响行数
     */
    int deleteCourseArrange(Integer courseArrangeNo);
}
